package qz_rpt

class OutsrcSummaryController {

    def commonDataService
    def dynamicQueryService
    def index(Integer max) {
        def cellList = org.kdx.DataUtils.getCellList()
        def pageSizeList = org.kdx.DataUtils.getPageSizeList()

        [totalCount: 5, pageSize: 20, pageCurrent: 1, orderField: 'id', orderDirection: 'asc', pageSizeList: pageSizeList, cellList: cellList]
    }

    def outsrcSummary(){
        def pageCurrent = params.pageCurrent ? Integer.parseInt(params.pageCurrent) : 1
        def pageSize = params.pageSize ? Integer.parseInt(params.pageSize) : 100
        params.startno = (pageSize * (pageCurrent - 1)) + 1
        params.endno = pageSize * pageCurrent
        def pageSizeList = [10,20,50,100]
        def outsrcSummary=[]
        def totalCount =0
        def tableHeadList = []
        if(params.EXPORT_CONTENT_NAME=='Excel'){
            params.SYS_QUERY_NAME = 'outsrcSummary'
            outsrcSummary = dynamicQueryService.queryForList(params)
            tableHeadList = []
            if (outsrcSummary.size() > 0) {
                tableHeadList = outsrcSummary[0].keySet()
            }
            params.SYS_QUERY_NAME = 'outsrcSummaryCount'
            totalCount = dynamicQueryService.queryForList(params)[0].TOTALCOUNT
        }



        params.SYS_QUERY_NAME = 'outsrcSummaryState'
        def outsrcSummaryState = dynamicQueryService.queryForList(params)

        params.SYS_QUERY_NAME = 'outsrcSummaryDanwei'
        def outsrcSummaryDanwei = dynamicQueryService.queryForList(params)
        params.SYS_QUERY_NAME = 'outsrcSummarySumQty'
        def outsrcSummarySumQty = dynamicQueryService.queryForList(params)
        [pageSize  : pageSize, pageSizeList: pageSizeList, startno: params.startno ?: '', endno: params.endno ?: '',
         totalCount: totalCount, tableHeadList: tableHeadList, outsrcSummary: outsrcSummary,
         startTime: params.startTime ?: '', endTime: params.endTime ?: '',
         part:params.part?:'', outsrcId:params.outsrcId?:'',
         outsrcSummaryState:outsrcSummaryState,state:params.state?:'',userId:params.userId?:'',userName:params.userName?:'',
         outsrcSummaryDanwei:outsrcSummaryDanwei,jiagongdanwei:params.jiagongdanwei?:'',
         outsrcSummarySumQty:outsrcSummarySumQty
         ]
    }
    def exportExcel() {
        def sysQueryName


        sysQueryName = params.SYS_QUERY_NAME

        params.startno = 1
        params.endno = 99999999999999999



        params.SYS_QUERY_NAME = sysQueryName

        def dataList = dynamicQueryService.queryForList(params)

        def tableHeadList =  []
        if(sysQueryName=='partFinList'){
            dataList=TranposUtils.colToRow('STEP_DESC','STEP_QTY',dataList)
            println(dataList)
        }
        if(dataList.size()>0){
            tableHeadList =  dataList[0].keySet()
        }
        String filename = new String("${sysQueryName}.xls".getBytes("UTF-8"), "UTF-8");
        response.setContentType('application/vnd.ms-excel;charset=UTF-8')
        response.setHeader('Content-disposition', "attachment;filename=${filename};charset=UTF-8")
        response.setCharacterEncoding("UTF-8");
        render(template: "export${params.EXPORT_CONTENT_NAME}", model: [dataList: dataList,tableHeadList:tableHeadList,startno:params.startno?:'',endno:params.endno?:''])
    }
}
